
# 用户登录的值对象
# 包括用户名和令牌
#用户登陆后需要返回用户名和令牌给前端，这里定义一个值对象来封装这两个信息
class UserLoginVO:
    def __init__(self, username, token):
        self.username = username
        self.token = token

    def to_dict(self):
        """
        将值对象转换为字典
        """
        return {
            'username': self.username,
            'token': self.token
        }

    @staticmethod
    def from_dict(data):
        """
        从字典创建值对象
        """
        return UserLoginVO(data['username'], data['token'])

    def __repr__(self):
        """
        返回值对象的字符串表示
        """
        return f"UserLoginVO(username={self.username}, token={self.token})"
